package com.cmb.model;

import java.util.Date;
import javax.persistence.*;

@Table(name = "t_elearn_course")
public class Course extends ElearnBaseEntity {
    /**
     * 课程名称
     */
    @Column(name = "course_name")
    private String courseName;

    /**
     * 课程类型
     */
    @Column(name = "course_type")
    private String courseType;

    /**
     * 课程简介
     */
    @Column(name = "course_intro")
    private String courseIntro;

    /**
     * 上传位置
     */
    @Column(name = "upload_location")
    private String uploadLocation;

    /**
     * 有效起始日期
     */
    @Column(name = "valid_start_date")
    private Date validStartDate;

    /**
     * 有效截止日期
     */
    @Column(name = "valid_end_date")
    private Date validEndDate;

    /**
     * 推送范围 1-全员推送 2-指定推送
     */
    @Column(name = "push_scope")
    private String pushScope;

    /**
     * 是否指定人员
     */
    @Column(name = "is_designated_officials")
    private String isDesignatedOfficials;

    /**
     * 是否指定业绩
     */
    @Column(name = "is_designated_performance")
    private String isDesignatedPerformance;

    /**
     * 是否必学(线下课程是否必须报名) 1-是 0-否
     */
    @Column(name = "must_study")
    private String mustStudy;

    /**
     * 是否评分 1-是 0-否
     */
    @Column(name = "is_score")
    private String isScore;

    /**
     * 评分天数
     */
    @Column(name = "score_days")
    private Integer scoreDays;

    /**
     * 是否问卷调查 1-是 0-否
     */
    @Column(name = "is_questionnaire")
    private String isQuestionnaire;

    /**
     * 问卷调查天数
     */
    @Column(name = "questionnaire_days")
    private Integer questionnaireDays;

    /**
     * 状态 0-草稿 1-待审批 2-已驳回 3-已通过 4-已生效 5-已过期 6-报名中 7-未开班 8-已开班
     */
    private String status;

    /**
     * 讲师
     */
    private String teacher;

    /**
     * 讲师简介
     */
    @Column(name = "teacher_intro")
    private String teacherIntro;

    /**
     * 学习方式 1-线上 2-线下
     */
    @Column(name = "study_type")
    private String studyType;

    /**
     * 最大报名人数
     */
    @Column(name = "max_signup_nums")
    private Integer maxSignupNums;

    /**
     * 报名截止时间
     */
    @Column(name = "signup_end_date")
    private Date signupEndDate;

    /**
     * 开课时间
     */
    @Column(name = "curriculum_time")
    private Date curriculumTime;

    /**
     * 开课天数
     */
    @Column(name = "curriculum_days")
    private Integer curriculumDays;

    /**
     * 试卷id
     */
    @Column(name = "paper_id")
    private String paperId;

    /**
     * 问卷调查id
     */
    @Column(name = "questionnaire_id")
    private String questionnaireId;

    /**
     * 工作流id
     */
    @Column(name = "workflow_id")
    private String workflowId;

    /**
     * 最多抢课人数
     */
    @Column(name = "rob_course_num")
    private Integer robCourseNum;

    /**
     * 展示图片
     */
    private String image;

    /**
     * 是否删除
     */
    @Column(name = "is_delete")
    private String isDelete;

    /**
     * 创建人id
     */
    @Column(name = "create_id")
    private String createId;

    /**
     * 最后更新人id
     */
    @Column(name = "last_update_id")
    private String lastUpdateId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 发布时间
     */
    @Column(name = "publish_time")
    private Date publishTime;

    /**
     * 查看考试情况是否显示答案 1-是 0-否
     */
    @Column(name = "is_show_answer")
    private String isShowAnswer;

    /**
     * 获取课程名称
     *
     * @return course_name - 课程名称
     */
    public String getCourseName() {
        return courseName;
    }

    /**
     * 设置课程名称
     *
     * @param courseName 课程名称
     */
    public void setCourseName(String courseName) {
        this.courseName = courseName == null ? null : courseName.trim();
    }

    /**
     * 获取课程类型
     *
     * @return course_type - 课程类型
     */
    public String getCourseType() {
        return courseType;
    }

    /**
     * 设置课程类型
     *
     * @param courseType 课程类型
     */
    public void setCourseType(String courseType) {
        this.courseType = courseType == null ? null : courseType.trim();
    }

    /**
     * 获取课程简介
     *
     * @return course_intro - 课程简介
     */
    public String getCourseIntro() {
        return courseIntro;
    }

    /**
     * 设置课程简介
     *
     * @param courseIntro 课程简介
     */
    public void setCourseIntro(String courseIntro) {
        this.courseIntro = courseIntro == null ? null : courseIntro.trim();
    }

    /**
     * 获取上传位置
     *
     * @return upload_location - 上传位置
     */
    public String getUploadLocation() {
        return uploadLocation;
    }

    /**
     * 设置上传位置
     *
     * @param uploadLocation 上传位置
     */
    public void setUploadLocation(String uploadLocation) {
        this.uploadLocation = uploadLocation == null ? null : uploadLocation.trim();
    }

    /**
     * 获取有效起始日期
     *
     * @return valid_start_date - 有效起始日期
     */
    public Date getValidStartDate() {
        return validStartDate;
    }

    /**
     * 设置有效起始日期
     *
     * @param validStartDate 有效起始日期
     */
    public void setValidStartDate(Date validStartDate) {
        this.validStartDate = validStartDate;
    }

    /**
     * 获取有效截止日期
     *
     * @return valid_end_date - 有效截止日期
     */
    public Date getValidEndDate() {
        return validEndDate;
    }

    /**
     * 设置有效截止日期
     *
     * @param validEndDate 有效截止日期
     */
    public void setValidEndDate(Date validEndDate) {
        this.validEndDate = validEndDate;
    }

    /**
     * 获取推送范围 1-全员推送 2-指定推送
     *
     * @return push_scope - 推送范围 1-全员推送 2-指定推送
     */
    public String getPushScope() {
        return pushScope;
    }

    /**
     * 设置推送范围 1-全员推送 2-指定推送
     *
     * @param pushScope 推送范围 1-全员推送 2-指定推送
     */
    public void setPushScope(String pushScope) {
        this.pushScope = pushScope == null ? null : pushScope.trim();
    }

    /**
     * 获取是否指定人员
     *
     * @return is_designated_officials - 是否指定人员
     */
    public String getIsDesignatedOfficials() {
        return isDesignatedOfficials;
    }

    /**
     * 设置是否指定人员
     *
     * @param isDesignatedOfficials 是否指定人员
     */
    public void setIsDesignatedOfficials(String isDesignatedOfficials) {
        this.isDesignatedOfficials = isDesignatedOfficials == null ? null : isDesignatedOfficials.trim();
    }

    /**
     * 获取是否指定业绩
     *
     * @return is_designated_performance - 是否指定业绩
     */
    public String getIsDesignatedPerformance() {
        return isDesignatedPerformance;
    }

    /**
     * 设置是否指定业绩
     *
     * @param isDesignatedPerformance 是否指定业绩
     */
    public void setIsDesignatedPerformance(String isDesignatedPerformance) {
        this.isDesignatedPerformance = isDesignatedPerformance == null ? null : isDesignatedPerformance.trim();
    }

    /**
     * 获取是否必学(线下课程是否必须报名) 1-是 0-否
     *
     * @return must_study - 是否必学(线下课程是否必须报名) 1-是 0-否
     */
    public String getMustStudy() {
        return mustStudy;
    }

    /**
     * 设置是否必学(线下课程是否必须报名) 1-是 0-否
     *
     * @param mustStudy 是否必学(线下课程是否必须报名) 1-是 0-否
     */
    public void setMustStudy(String mustStudy) {
        this.mustStudy = mustStudy == null ? null : mustStudy.trim();
    }

    /**
     * 获取是否评分 1-是 0-否
     *
     * @return is_score - 是否评分 1-是 0-否
     */
    public String getIsScore() {
        return isScore;
    }

    /**
     * 设置是否评分 1-是 0-否
     *
     * @param isScore 是否评分 1-是 0-否
     */
    public void setIsScore(String isScore) {
        this.isScore = isScore == null ? null : isScore.trim();
    }

    /**
     * 获取评分天数
     *
     * @return score_days - 评分天数
     */
    public Integer getScoreDays() {
        return scoreDays;
    }

    /**
     * 设置评分天数
     *
     * @param scoreDays 评分天数
     */
    public void setScoreDays(Integer scoreDays) {
        this.scoreDays = scoreDays;
    }

    /**
     * 获取是否问卷调查 1-是 0-否
     *
     * @return is_questionnaire - 是否问卷调查 1-是 0-否
     */
    public String getIsQuestionnaire() {
        return isQuestionnaire;
    }

    /**
     * 设置是否问卷调查 1-是 0-否
     *
     * @param isQuestionnaire 是否问卷调查 1-是 0-否
     */
    public void setIsQuestionnaire(String isQuestionnaire) {
        this.isQuestionnaire = isQuestionnaire == null ? null : isQuestionnaire.trim();
    }

    /**
     * 获取问卷调查天数
     *
     * @return questionnaire_days - 问卷调查天数
     */
    public Integer getQuestionnaireDays() {
        return questionnaireDays;
    }

    /**
     * 设置问卷调查天数
     *
     * @param questionnaireDays 问卷调查天数
     */
    public void setQuestionnaireDays(Integer questionnaireDays) {
        this.questionnaireDays = questionnaireDays;
    }

    /**
     * 获取状态 0-草稿 1-待审批 2-已驳回 3-已通过 4-已生效 5-已过期 6-报名中 7-未开班 8-已开班
     *
     * @return status - 状态 0-草稿 1-待审批 2-已驳回 3-已通过 4-已生效 5-已过期 6-报名中 7-未开班 8-已开班
     */
    public String getStatus() {
        return status;
    }

    /**
     * 设置状态 0-草稿 1-待审批 2-已驳回 3-已通过 4-已生效 5-已过期 6-报名中 7-未开班 8-已开班
     *
     * @param status 状态 0-草稿 1-待审批 2-已驳回 3-已通过 4-已生效 5-已过期 6-报名中 7-未开班 8-已开班
     */
    public void setStatus(String status) {
        this.status = status == null ? null : status.trim();
    }

    /**
     * 获取讲师
     *
     * @return teacher - 讲师
     */
    public String getTeacher() {
        return teacher;
    }

    /**
     * 设置讲师
     *
     * @param teacher 讲师
     */
    public void setTeacher(String teacher) {
        this.teacher = teacher == null ? null : teacher.trim();
    }

    /**
     * 获取讲师简介
     *
     * @return teacher_intro - 讲师简介
     */
    public String getTeacherIntro() {
        return teacherIntro;
    }

    /**
     * 设置讲师简介
     *
     * @param teacherIntro 讲师简介
     */
    public void setTeacherIntro(String teacherIntro) {
        this.teacherIntro = teacherIntro == null ? null : teacherIntro.trim();
    }

    /**
     * 获取学习方式 1-线上 2-线下
     *
     * @return study_type - 学习方式 1-线上 2-线下
     */
    public String getStudyType() {
        return studyType;
    }

    /**
     * 设置学习方式 1-线上 2-线下
     *
     * @param studyType 学习方式 1-线上 2-线下
     */
    public void setStudyType(String studyType) {
        this.studyType = studyType == null ? null : studyType.trim();
    }

    /**
     * 获取最大报名人数
     *
     * @return max_signup_nums - 最大报名人数
     */
    public Integer getMaxSignupNums() {
        return maxSignupNums;
    }

    /**
     * 设置最大报名人数
     *
     * @param maxSignupNums 最大报名人数
     */
    public void setMaxSignupNums(Integer maxSignupNums) {
        this.maxSignupNums = maxSignupNums;
    }

    /**
     * 获取报名截止时间
     *
     * @return signup_end_date - 报名截止时间
     */
    public Date getSignupEndDate() {
        return signupEndDate;
    }

    /**
     * 设置报名截止时间
     *
     * @param signupEndDate 报名截止时间
     */
    public void setSignupEndDate(Date signupEndDate) {
        this.signupEndDate = signupEndDate;
    }

    /**
     * 获取开课时间
     *
     * @return curriculum_time - 开课时间
     */
    public Date getCurriculumTime() {
        return curriculumTime;
    }

    /**
     * 设置开课时间
     *
     * @param curriculumTime 开课时间
     */
    public void setCurriculumTime(Date curriculumTime) {
        this.curriculumTime = curriculumTime;
    }

    /**
     * 获取开课天数
     *
     * @return curriculum_days - 开课天数
     */
    public Integer getCurriculumDays() {
        return curriculumDays;
    }

    /**
     * 设置开课天数
     *
     * @param curriculumDays 开课天数
     */
    public void setCurriculumDays(Integer curriculumDays) {
        this.curriculumDays = curriculumDays;
    }

    /**
     * 获取试卷id
     *
     * @return paper_id - 试卷id
     */
    public String getPaperId() {
        return paperId;
    }

    /**
     * 设置试卷id
     *
     * @param paperId 试卷id
     */
    public void setPaperId(String paperId) {
        this.paperId = paperId == null ? null : paperId.trim();
    }

    /**
     * 获取问卷调查id
     *
     * @return questionnaire_id - 问卷调查id
     */
    public String getQuestionnaireId() {
        return questionnaireId;
    }

    /**
     * 设置问卷调查id
     *
     * @param questionnaireId 问卷调查id
     */
    public void setQuestionnaireId(String questionnaireId) {
        this.questionnaireId = questionnaireId == null ? null : questionnaireId.trim();
    }

    /**
     * 获取工作流id
     *
     * @return workflow_id - 工作流id
     */
    public String getWorkflowId() {
        return workflowId;
    }

    /**
     * 设置工作流id
     *
     * @param workflowId 工作流id
     */
    public void setWorkflowId(String workflowId) {
        this.workflowId = workflowId == null ? null : workflowId.trim();
    }

    /**
     * 获取最多抢课人数
     *
     * @return rob_course_num - 最多抢课人数
     */
    public Integer getRobCourseNum() {
        return robCourseNum;
    }

    /**
     * 设置最多抢课人数
     *
     * @param robCourseNum 最多抢课人数
     */
    public void setRobCourseNum(Integer robCourseNum) {
        this.robCourseNum = robCourseNum;
    }

    /**
     * 获取展示图片
     *
     * @return image - 展示图片
     */
    public String getImage() {
        return image;
    }

    /**
     * 设置展示图片
     *
     * @param image 展示图片
     */
    public void setImage(String image) {
        this.image = image == null ? null : image.trim();
    }

    /**
     * 获取是否删除
     *
     * @return is_delete - 是否删除
     */
    public String getIsDelete() {
        return isDelete;
    }

    /**
     * 设置是否删除
     *
     * @param isDelete 是否删除
     */
    public void setIsDelete(String isDelete) {
        this.isDelete = isDelete == null ? null : isDelete.trim();
    }

    /**
     * 获取创建人id
     *
     * @return create_id - 创建人id
     */
    public String getCreateId() {
        return createId;
    }

    /**
     * 设置创建人id
     *
     * @param createId 创建人id
     */
    public void setCreateId(String createId) {
        this.createId = createId == null ? null : createId.trim();
    }

    /**
     * 获取最后更新人id
     *
     * @return last_update_id - 最后更新人id
     */
    public String getLastUpdateId() {
        return lastUpdateId;
    }

    /**
     * 设置最后更新人id
     *
     * @param lastUpdateId 最后更新人id
     */
    public void setLastUpdateId(String lastUpdateId) {
        this.lastUpdateId = lastUpdateId == null ? null : lastUpdateId.trim();
    }

    /**
     * 获取备注
     *
     * @return remark - 备注
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置备注
     *
     * @param remark 备注
     */
    public void setRemark(String remark) {
        this.remark = remark == null ? null : remark.trim();
    }

    /**
     * 获取发布时间
     *
     * @return publish_time - 发布时间
     */
    public Date getPublishTime() {
        return publishTime;
    }

    /**
     * 设置发布时间
     *
     * @param publishTime 发布时间
     */
    public void setPublishTime(Date publishTime) {
        this.publishTime = publishTime;
    }

    /**
     * 获取查看考试情况是否显示答案 1-是 0-否
     *
     * @return is_show_answer - 查看考试情况是否显示答案 1-是 0-否
     */
    public String getIsShowAnswer() {
        return isShowAnswer;
    }

    /**
     * 设置查看考试情况是否显示答案 1-是 0-否
     *
     * @param isShowAnswer 查看考试情况是否显示答案 1-是 0-否
     */
    public void setIsShowAnswer(String isShowAnswer) {
        this.isShowAnswer = isShowAnswer == null ? null : isShowAnswer.trim();
    }
}